package com.spsoft.vatoutinv.entity.vmsfulloutinvoice;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 数电发票明细表
 * </p>
 *
 * @author chenxudong
 * @since 2023-11-30
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("VMS_FULL_OUTINVOICEITEMS")
@KeySequence(value = "SEQ_VMS_FULL_OUTINVOICEITEMS")
public class VmsFullOutInvoiceItems implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 明细表主键
     */
    @TableId(value = "FIVIID", type = IdType.INPUT)
    private Long fiviid;

    /**
     * 明细序号
     */
    private Long mxxh;

    /**
     * 对应蓝字发票明细序号;红票必传
     */
    private Long dylzfpmxxh;

    /**
     * 项目名称
     */
    private String xmmc;

    /**
     * 规格型号
     */
    private String ggxh;

    /**
     * 单位;如“数量”“单价”栏次非空，则本栏次必须非空
     */
    private String dw;

    /**
     * 数量;如“单价”“单位”栏次非空，则本栏次必须非空
     */
    private String sl;

    /**
     * 单价;如“数量”“单位”栏次非空，则本栏次必须非空
     */
    private String dj;

    /**
     * 含税单价;含税单价，保留6位小数
     */
    private String hsdj;

    /**
     * 金额
     */
    private BigDecimal je;

    /**
     * 增值税税率/征收率
     */
    private BigDecimal slv;

    /**
     * 税额
     */
    private BigDecimal se;

    /**
     * 扣除额
     */
    private BigDecimal kce;

    /**
     * 商品和服务税收分类合并编码
     */
    private String sphfwssflhbbm;

    /**
     * 发票行性质;00：正常行 01：折扣行 02：被折扣行
     */
    private String fphxz;

    /**
     * 产品编码
     */
    private String cpbm;

    /**
     * 计税方法;1：一般计税 2：简易计税 3：免抵退税 4：免税
     */
    private String jsff;

    /**
     * 征税项目;01.销售货物 02.提供加工修理修配劳务 03.提供服务 04.销售不动产 05.销售无形资产
     */
    private String zsxm;

    /**
     * 优惠政策标识;01：简易征收 02：稀土产品 03：免税 04：不征税 05：先征后退 06：100%先征后退 07：50%先征后退 08：按3%简易征收
     * 09：按5%简易征收 10：按5%简易征收减按1.5%计征 11：即征即退30% 12：即征即退50% 13：即征即退70% 14：即征即退100%
     * 15：超税负3%即征即退 16：超税负8%即征即退 17：超税负12%即征即退 18：超税负6%即征即退
     */
    private String yhzcbs;

    /**
     * 数电发票表id
     */
    private Long foidid;

    /**
     * 增值税发票表主键，用于关联老发票表
     */
    private Long oidid;

    /**
     * 增值税明细表主键，用于关联老明细表，流水追溯发票的时候用
     */
    private Long iviid;

    /**
     * 创建时间
     */
    private Date creatTime;

    /**
     * 创建人
     */
    private String creatBy;

    /**
     * 流水id，若一条明细由多条流水合并而来，此字段以“、”进行拼接
     */
    @TableField(exist = false)
    private String rdid;
}
